Case Study · Salesforce · Senior Director

Web Data Connection Setup Assistant

Reducing web data connection setup from ~15 days with a specialist to ~15 minutes self-serve.

Setup UX Automation Data Platform Strategic Leadership
At a Glance
RoleSenior Director, UX
PlatformSalesforce Data Cloud
CollaboratorMichael Stallings, Lead Product Designer
Outcome~15 days → ~15 min self-serve
Background

Salesforce Data Cloud was growing fast — fast enough that the organization was largely oriented around shipping functionality, not refining the experience of using it. The product had been built primarily by engineers, for engineers, and it showed. The result was a capable but unforgiving platform that routinely exceeded the technical comfort level of the admins and operators who were actually responsible for setting it up.

My team's mandate was to identify where this mismatch between user capability and product complexity was creating the most friction — and to fix it.

The Problem

A Promise of a Quick Path

Our "Voice of the Customer" data pointed to Web data connection setup as a key pain point. When customers wanted to enable real-time use cases — personalization, behavioral tracking, live segmentation — they had to configure a web data connection inside Salesforce Setup. The entry point was a single page with two blank input fields: one for a JSON schema, one for a "sitemap." That was it. No guidance, no examples in context, no indication of the effort required.

The original setup entry point The original experience offered little orientation before action

What it didn't tell users:

"Schema" meant "the events you want to track on your website"

Defining those events required writing valid JSON by hand

"Sitemap" didn't mean the HTML sitemap they knew — it meant the routing logic for how their site's pages map to data structures

None of this came pre-populated; every event was custom, even the standard ones

The people encountering this setup step were typically CRM admins — skilled Salesforce operators, but not web developers or data engineers. They would hit this wall and do one of two things: abandon real-time use cases entirely, or hire a specialist to do it for them. That specialist engagement averaged around 15 days — and that was if they could find and afford one.

Before — CRM admin + paid specialist
1Setup page — Two blank input fields
2JSON schema field — Hand-code event tracking schema
3"Sitemap" field — Undefined term, no guidance
4Hire a specialist — Or abandon setup entirely
5Copy JS snippet — Paste manually into site header
Outcome: ~15 days, with paid specialist help

"Users needed better documentation for the JSON schema field"

After — CRM admin, self-serve
1Before you begin — Use cases, roles, readiness check
2Choose connection type — GA4, custom, mobile, or server-to-server
3Preview automation — Events and sitemap shown before run
4Auto-generate schema — GA4 events pre-populated, no JSON required
5Activate via Google Tag Manager — Tag created in pending state, not auto-published
Outcome: ~15 min, self-serve, no specialist needed

"Users shouldn't need to write JSON at all — the product was asking the wrong thing from the wrong person"

My Role

Design Direction & Strategic Leadership

I directed this project as Senior Director, partnering closely with Michael Stallings who owned the day-to-day design execution. My contributions were primarily strategic and diagnostic:

Reframing the persona

Early conversations focused on who was doing the setup today — typically paid specialists. I pushed us to ask who should be able to do it: the CRM admin who already lived in Salesforce every day. That reframe changed what we were optimizing for.

Identifying scope creep risk

When the team was focused on making the JSON input better, I pushed to zoom out. The actual workflow extended well past that first field — through event mapping, data stream creation, identity resolution, and deploying a tag to the customer's live website.

Naming as UX

One of the early conversations was about the word "sitemap." It's a term with a well-understood meaning in web development — and it's not what Salesforce meant by it. We flagged this as a trust and comprehension problem, not just a documentation problem.

Guiding iteration

I met with Michael one to two times per week to review work in progress, pressure-test solutions, and help determine when to pursue ecosystem partnerships versus when to simplify.

Persona Spectrum
CRM Admin

Skilled Salesforce operator; lives in the platform every day; not a developer

who we redesigned for
Salesforce Specialist

Paid contractor brought in for complex setup tasks

Web Developer

Comfortable with code, event schemas, and site architecture

Data Engineer

Builds and maintains data infrastructure; most technically sophisticated

who the original experience was built for
Discovery

Finding the Right Solution

We explored several solution paths before landing on the right one.

1 · UI Builder (early direction)

The first instinct was to replace the JSON input with a visual event builder — add an event name, an API name, a field type, no code required. This was a genuine improvement, but it still required users to know which events to track and to find them on their site.

2 · Use-Case Templates (discarded)

We explored pre-built event sets for common scenarios — marketing analytics, e-commerce, sign-up tracking. Engineering deprioritized it, and more importantly, we recognized it was still a workaround. It answered "give me a starting point" but not "make this accurate to my site."

3 · Third-Party Partnerships (pursued, mostly blocked)

We investigated integrating directly with WordPress, Adobe Launch, and Google Analytics — logging into these tools to read a user's existing event schema and pre-populate the connection. The WordPress path was technically viable but commercially complicated. The Adobe partnership didn't move fast enough.

4 · The GA4 Insight (breakthrough)

The turning point came through our WordPress research. While investigating a direct WordPress integration, we realized that most WordPress sites were already running Google Analytics 4 — and GA4 operates on a standardized event schema. That meant that for any company using GA4, we already knew their event structure without them having to tell us. No OAuth. No integration agreement. No custom configuration. The GA4 path became the foundation of the final design.

Insight Chain
Premises
· Most target customers already use GA4 · GA4 uses a standardized event schema · We can infer event structure from the customer's site
Insight

We don't need users to write JSON at all — we can pre-populate the schema from GA4 + sitemap inference.

Outcome

Self-serve setup in ~15 minutes — no specialist required.

Solution

A Guided, Automated Setup Flow

The final design replaced the blank JSON fields with a guided, five-step setup flow.

Step 1

Empty state

The starting point surfaces use cases and expected roles so users know what they're setting up and whether they're the right person to do it.

Empty state screen
Choose connection type screen
Step 2

Choose connection type

Users select from GA4, custom, mobile app, or server-to-server — with plain-language guidance on when each applies.

Step 3

Review inferred events

The system reads the user's GA4 setup and site structure to pre-populate events and sitemap mapping, drastically reducing manual input.

Review inferred events screen
Confirm and configure screen
Step 4

Confirm and configure

Users review the generated data stream configuration before activation, with clear explanations of what each field controls.

Step 5

Activate via Google Tag Manager

The final step creates a GTM tag in a pending state, giving the user control over when it goes live without requiring manual JavaScript deployment.

Activate via Google Tag Manager screen

Key design decisions included:

Replacing "sitemap" with clearer, contextual language tied to the user's site structure

Pre-populating standard GA4 events so users only review, rather than invent, their schema

Creating a GTM tag in a pending state so activation is controlled and reversible

Keeping the experience inside Salesforce Setup rather than introducing a separate tool

Impact · From Specialist Dependency to Self-Serve
~15 days ~15 min
Reduction in time to configure a web data connection

The redesigned flow transformed web data connection setup from a specialist-dependent, multi-week engagement into a self-serve task most CRM admins could complete in minutes.

Beyond the efficiency gain, the project changed how the organization thought about setup UX in Data Cloud. It demonstrated that complex data infrastructure could be made accessible to the people actually responsible for operating it — without dumbing down the underlying capability.

Reflection · Leadership Takeaways
Refuse to optimize a broken frame

The first design instinct was to improve the JSON input. The bigger opportunity was recognizing that the entire workflow was framed for the wrong user.

Follow the user's existing tooling

The GA4 insight came from observing what users already had in place. The best automation often doesn't require new integrations — it reads what's already there.

Strategic leaders amplify craft

Michael Stallings did the hands-on design work. My role was to keep us pointed at the right problem, protect the project from scope drift, and create space for the solution to mature.

Let's make complex things usable.

← More Work Get in Touch →
Tim Merrill mark Tim Merrill
© 2026 Tim Merrill · Design Leadership
Email LinkedIn
{{ lightboxImg }} ×